// miniprogram/pages/scan/scan.js
// 获取App对象
var app =  getApp();


Page({

  /**
   * 页面的初始数据
   */
  data: {

  },


  takePhoto(){
    wx.showToast({
      icon:'loading',
      title:'识别中...'
    })

    // 1. 拍下一张照片
    this.getPhoto().then((path)=>{
      // 2. 将照片转为base64
      return this.readFile(path)
    }).then((base64)=>{
      // 3. 提交到腾讯云
      return this.txApi(base64);
    }).then((result)=>{
      // 4. 判断结果
      let items = result.data.data.items;
      console.log(items);
      // 判断是否有邮字
      let hasYou = items.some((item)=>{
        return item.itemstring.indexOf('邮') > -1;
      })
      console.log('hasYou', hasYou);
      /***  调试云函数，测试完后记得删掉 ***/ 
      hasYou = true;
      /***  调试云函数 ***/ 


      if( hasYou ){
        wx.showToast({
          title: '恭喜，有邮字！！！',
          icon: 'success',
          duration: 2500,
        });
        // 创建记录
        wx.cloud.callFunction({
          name: 'getYou',
          success:(res)=>{
            console.log('getYou',res);
          }
        })

      }else{
        wx.showToast({
          title: '请再试一遍',
          icon: 'none',
          duration: 2500,
        });
      }


    })
  },
  // 1. 拍照
  getPhoto(){
    return new Promise( (reslove,reject)=>{
      const ctx = wx.createCameraContext()
      ctx.takePhoto({
        quality: 'high',
        success: (res) => {
          // 返回图片的临时路径
          reslove(res.tempImagePath);
        },
        fail:(err)=>{
          reject(err)
        }
      })
    })
  },
  // 2. 转base64
  readFile(path){
    return new Promise( (reslove,reject)=>{
      // 获取文件系统管理器对象
      const fs = wx.getFileSystemManager();

      fs.readFile({
        filePath: path,
        encoding:'base64',
        success:(res)=>{
          reslove(res.data);
        },
        fail:(err)=>{
          reject(err);
        },
      })
    })
  },
  // 3. 
  txApi(base64){
    return new Promise( (reslove,reject)=>{
      wx.request({
        url:'https://recognition.image.myqcloud.com/ocr/general',
        header:{
          'host':'recognition.image.myqcloud.com',
          'content-type':'application/json',
          'authorization':  app.globalData.sign
        },
        data:{
          appid:'1258410954',
          image: base64
        },
        method:'POST',
        success:(res)=>{
          reslove(res);
        },
        fail:(err)=>{
          reject(err);
        },
      })
    })
  },


  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})